package scm.client;

import scm.message.GestorMensaje;
import scm.server.MailServer;
import scm.message.Message;
import javax.swing.JTextField;
/**
 * 
 * @author Benito
 *
 */
public class MailClient {
    private GestorMensaje gmensaje = null;
    private GestorCliente gcliente = null;
    private MailServer server;

    public MailClient(Object username, Object pass){
        this.usuario = username;
        this.pass = pass;
	gcliente = new GestorCliente((JTextField)usuario, (JTextField)pass);
    }

    public MailClient(Object sender, Object destinatario, Object asunto, Object mensaje){
        this.sender = sender;
        this.destinatario = destinatario;
        this.asunto = asunto;
        this.mensaje = mensaje;
	gmensaje = new GestorMensaje((JTextField)sender, (JTextField)destinatario,(JTextField)asunto,(JTextField)mensaje);
    }

    public MailClient() {
    }

    public void sendMessage(Message mensaje){
//        server.post(mensaje);
    }

    public int checkMessage(String nombre){
        return gmensaje.Cantidad(nombre);
    }

    public void reciveMessage(Message message){
        int clave = checkMessage(message.obtenerDestinatarioMensaje());
        gmensaje.Adicionar(clave,message);
    }

    public void RegistrarCliente(String datos){
        gcliente.AdicionarCliente(datos);
    }

    public void AbrirArchivoCliente(){
        gcliente.Abrir();
    }

    public boolean BuscarNombre(String nombre){
        return gcliente.BuscarNombre(nombre);
    }

    public boolean BuscarPass(String pass){
        return gcliente.BuscarPass(pass);
    }


//    public Message readNextMessage(){
//        ArrayList al = gestor.SiguienteMessage((String)sender);
//        index = (index>=al.size())? 1 : index + 1;
//        int count =1;
//        Iterator It = al.iterator();
//        while (It.hasNext()){
//            String tmp = It.next().toString();
//            if( count == index){
//                String[] datos = tmp.split(",");
//
//            }
//            count ++;
//        }
//
////        Message message = (Message)gestor.SiguienteMensaje((String)sender);
////        return message;
//    }
	
    

        private Object usuario;
        private Object pass;

        private Object sender;
        private Object destinatario;
        private Object asunto;
        private Object mensaje;

        private int index=0;

}
